package com.petvc.tv

import android.content.Context
import android.widget.Toast
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext

object ToastUtils {
    
    /**
     * 显示短时间Toast消息
     */
    fun showShort(context: Context, message: String) {
        Toast.makeText(context, message, Toast.LENGTH_SHORT).show()
    }
    
    /**
     * 显示长时间Toast消息
     */
    fun showLong(context: Context, message: String) {
        Toast.makeText(context, message, Toast.LENGTH_LONG).show()
    }
    
    /**
     * 在后台线程显示Toast消息
     */
    fun showOnMainThread(context: Context, message: String, isLong: Boolean = false) {
        CoroutineScope(Dispatchers.Main).launch {
            val duration = if (isLong) Toast.LENGTH_LONG else Toast.LENGTH_SHORT
            Toast.makeText(context, message, duration).show()
        }
    }
    
    /**
     * 显示登录相关消息
     */
    fun showLoginMessage(context: Context, message: String, isSuccess: Boolean = false) {
        showLong(context, message)
    }
    
    /**
     * 显示网络错误消息
     */
    fun showNetworkError(context: Context) {
        showLong(context, "网络连接失败，请检查网络设置")
    }
    
    /**
     * 显示服务器错误消息
     */
    fun showServerError(context: Context) {
        showLong(context, "服务器连接失败，请稍后重试")
    }
    
    /**
     * 显示认证失败消息
     */
    fun showAuthError(context: Context) {
        showLong(context, "用户名或密码错误，请重新输入")
    }
    
    /**
     * 显示登录成功消息
     */
    fun showLoginSuccess(context: Context) {
        showShort(context, "登录成功，正在跳转...")
    }
} 